1. Field of the Invention
The present invention relates generally to a method and apparatus for encrypting and decrypting digital data, and more particularly to a method and apparatus for encrypting and decrypting digital data, this method processes multimedia digital data through multiple Huffman tables and encryption keys to enhance security and processing efficiency.
2. Description of the Related Art
For many years, the entertainment industry has provided audio-visual information to the general populous in the form of television programming. When transmitted in an analog format, such as National Television Systems Committee (NTSC) or Phase Alternating Line (PAL), this programming is somewhat protected due to the inherent nature of analog signaling.
Due to advances in digital processing technology and acceptance of the Internet, digital content distribution is now growing in popularity. For example, digital TV has begun to play an important role nowadays. However, inappropriate content appears more and more in TV programs without effective control from such broadcasting. Even though there exists products that can help parents protect their kids from specific channels, there is still inappropriate content that comes from so-called healthy or safe channels, or within movies whose producers don't want to cut them since they might be specifically used to attract certain audience or it might be important to show content's integrity. It will be highly desirable to have management on those inappropriate digital data such as digital TV content to kids to common channel.
Before describing prior art encryption mechanisms for multimedia digital data, it is beneficial to review the basic building blocks to process and compress multimedia digital data. FIG. 1 shows a schematic diagram of an exemplary media content provider system, wherein a content provider sends multimedia digital data, such as video, audio and image data, to a plurality of clients through wireless or wired channels. Generally, the transmission of the video content needs considerable bandwidth and therefore various standards are proposed to compress the video content. Moving Picture Experts Group (MPEG) standards are international standards for compressing and transmitting moving images and audio data, and methods of decompressing and processing the coded compressed information. The MPEG standards include MPEG-1, MPEG-2 and MPEG-4, and generally eliminate or transform duplicated information and compress moving image signals by applying statistical properties to the remaining or the transformed multimedia data.
FIG. 2 shows a simplified schematic diagram of a prior art MPEG 2 encoder 10, wherein certain elements, such as motion estimator, prediction selector, subtract unit, internal decoder and rate controller, are omitted for simplicity.
FIG. 3 is a hierarchical diagram of MPEG bit stream from a video sequence level to a block level. A video clip comprises a plurality of picture frames and several frames are allocated to group of picture (GOP) to exploit temporal redundancy. One I frame (Intra frame) out of the GOP is divided into a plurality of slices and each slice is further divided into a plurality of macro blocks (MB). The macro block is further divided into a plurality of blocks, wherein a block is the smallest coding unit in a standard video coding algorithm and is processed by the encoder 10 shown in FIG. 2.
Therefore, the input of the encoder 10 shown in FIG. 2 is an 8×8 block of pixels, which will constitute an image frame with other blocks. The 8×8 block of pixels is processed by a Discrete Cosine Transform (DCT) 100 to exploit redundancy and irrelevancy, which is important to digital image/video compression. DCT coefficients obtained through the DCT 100 are quantized and zigzag scanned to form bit sequences with highly peaked probability. The bit sequences are processed by a run-length coder 140 to account for consecutive logical zeros and then the processed result is sent to a variable length coder (VLC), such as a Huffman coder 160, for reducing overall data size. The data output by the Huffman coder 160 is a data bit stream and can be sent to a receiver with corresponding decoder capabilities to process the data bit stream in reverse order (i.e., decode it).
Traditional solutions to multimedia data confidentiality are based on scrambling techniques, which consist of relatively simple permutation and/or affine transformation operations in the time or the frequency domain. However, as the computing power increases quickly these days, low cost scrambling algorithms become vulnerable to attacks. Furthermore, scrambling of the raw signal degrades the performance of multimedia compression systems, which have been designed based on the characteristics of unscrambled signals.
More recently, the focus of multimedia security research has shifted to integrating encryption with multimedia compression systems. U.S. Published Patent Application No. 20040136566 discloses a method and apparatus for encrypting and compressing multimedia data. The disclosed method includes creating DCT coefficients by applying input multimedia data to a DCT unit, and quantizing the DCT coefficients; encrypting and compressing transformed Differential Coefficients (DC coefficient) and transformed Amplitude Coefficients (AC coefficient) by transforming encoded DC and AC coefficients depending on a certain encryption key at the time of entropy encoding quantized DC and AC coefficients of the quantized DCT coefficients. However, this method decreases compression efficiency as a result of encrypting DCT coefficients before run-length and Huffman coding.